package com.gimi.cloud.bbp.dto.params;

import com.gimi.cloud.bbp.common.enums.ResponseCodeEnum;
import com.gimi.cloud.bbp.dto.base.BaseDTO;
import org.hibernate.validator.constraints.NotBlank;
import org.hibernate.validator.constraints.Range;

import javax.validation.constraints.NotNull;
import java.util.Date;

/**
 * Created by shazhiwei on 2017/12/14.
 */
public class AddMasterParams extends BaseDTO {
    private static final long serialVersionUID = 1L;

    /**
     * 用户主键
     */
    private Integer maId;

    /**
     * 登录名
     */
    @NotBlank
    private String username;

    /**
     * 登录密码
     */
    @NotBlank
    private String password;

    /**
     * 系统通用名称
     */
    @NotBlank
    private String maName;

    /**
     * 英文名称
     */
    private String maEname;

    /**
     * 头像，可为网上图片地址
     */
    private String maAvatar;

    /**
     * 出生日期
     */
    private Date maBirthday;

    /**
     * 性别
     */
    @NotNull
    @Range(min = 1,max = 2)
    private Integer maSex;

    /**
     * 联系方式
     */
    @NotBlank
    private String maTel;

    /**
     * QQ号
     */
    private String maQq;

    /**
     * 微信号
     */
    private String maWeixin;

    /**
     * 个人简介
     */
    private String maDescription;

    /**
     * 是否是超级管理员（1：是，0：否）
     */
    @NotNull
    @Range(min = 0,max = 1)
    private Integer maIsadmin;

    /**
     * 用户状态（1：启用，0：禁用）
     */
    private Integer maState;

    /**
     * 是否锁定（1：是，0：否）
     */
    private Integer maIsLock;

    /**
     * 锁定/或解锁时间(x(小时自动解锁))
     */
    private Date maUnlockTime;

    /**
     * 密码错误次数
     */
    private Integer maPwdErrorCount;

    private ResponseCodeEnum responseCode;

    private Integer roleId;

    @NotBlank
    private String roleIds;

    /**
     * 获取用户主键
     */
    public Integer getMaId() {
        return maId;
    }

    /**
     * 设置用户主键
     */
    public void setMaId(Integer maId) {
        this.maId = maId;
    }

    /**
     * 获取登录名
     */
    public String getUsername() {
        return username;
    }

    /**
     * 设置登录名
     */
    public void setUsername(String username) {
        this.username = username;
    }

    /**
     * 获取登录密码
     */
    public String getPassword() {
        return password;
    }

    /**
     * 设置登录密码
     */
    public void setPassword(String password) {
        this.password = password;
    }

    /**
     * 获取系统通用名称
     */
    public String getMaName() {
        return maName;
    }

    /**
     * 设置系统通用名称
     */
    public void setMaName(String maName) {
        this.maName = maName;
    }

    /**
     * 获取英文名称
     */
    public String getMaEname() {
        return maEname;
    }

    /**
     * 设置英文名称
     */
    public void setMaEname(String maEname) {
        this.maEname = maEname;
    }

    /**
     * 获取头像，可为网上图片地址
     */
    public String getMaAvatar() {
        return maAvatar;
    }

    /**
     * 设置头像，可为网上图片地址
     */
    public void setMaAvatar(String maAvatar) {
        this.maAvatar = maAvatar;
    }

    /**
     * 获取出生日期
     */
    public Date getMaBirthday() {
        return maBirthday;
    }

    /**
     * 设置出生日期
     */
    public void setMaBirthday(Date maBirthday) {
        this.maBirthday = maBirthday;
    }

    /**
     * 获取性别
     */
    public Integer getMaSex() {
        return maSex;
    }

    /**
     * 设置性别
     */
    public void setMaSex(Integer maSex) {
        this.maSex = maSex;
    }

    /**
     * 获取联系方式
     */
    public String getMaTel() {
        return maTel;
    }

    /**
     * 设置联系方式
     */
    public void setMaTel(String maTel) {
        this.maTel = maTel;
    }

    /**
     * 获取QQ号
     */
    public String getMaQq() {
        return maQq;
    }

    /**
     * 设置QQ号
     */
    public void setMaQq(String maQq) {
        this.maQq = maQq;
    }

    /**
     * 获取微信号
     */
    public String getMaWeixin() {
        return maWeixin;
    }

    /**
     * 设置微信号
     */
    public void setMaWeixin(String maWeixin) {
        this.maWeixin = maWeixin;
    }

    /**
     * 获取个人简介
     */
    public String getMaDescription() {
        return maDescription;
    }

    /**
     * 设置个人简介
     */
    public void setMaDescription(String maDescription) {
        this.maDescription = maDescription;
    }

    /**
     * 获取是否是超级管理员（1：是，0：否）
     */
    public Integer getMaIsadmin() {
        return maIsadmin;
    }

    /**
     * 设置是否是超级管理员（1：是，0：否）
     */
    public void setMaIsadmin(Integer maIsadmin) {
        this.maIsadmin = maIsadmin;
    }

    /**
     * 获取用户状态（1：启用，0：禁用）
     */
    public Integer getMaState() {
        return maState;
    }

    /**
     * 设置用户状态（1：启用，0：禁用）
     */
    public void setMaState(Integer maState) {
        this.maState = maState;
    }

    /**
     * 获取是否锁定（1：是，0：否）
     */
    public Integer getMaIsLock() {
        return maIsLock;
    }

    /**
     * 设置是否锁定（1：是，0：否）
     */
    public void setMaIsLock(Integer maIsLock) {
        this.maIsLock = maIsLock;
    }

    /**
     * 获取锁定/或解锁时间(x(小时自动解锁))
     */
    public Date getMaUnlockTime() {
        return maUnlockTime;
    }

    /**
     * 设置锁定/或解锁时间(x(小时自动解锁))
     */
    public void setMaUnlockTime(Date maUnlockTime) {
        this.maUnlockTime = maUnlockTime;
    }

    /**
     * 获取密码错误次数
     */
    public Integer getMaPwdErrorCount() {
        return maPwdErrorCount;
    }

    /**
     * 设置密码错误次数
     */
    public void setMaPwdErrorCount(Integer maPwdErrorCount) {
        this.maPwdErrorCount = maPwdErrorCount;
    }

    public ResponseCodeEnum getResponseCode() {
        return responseCode;
    }

    public void setResponseCode(ResponseCodeEnum responseCode) {
        this.responseCode = responseCode;
    }

    public Integer getRoleId() {
        return roleId;
    }

    public void setRoleId(Integer roleId) {
        this.roleId = roleId;
    }

    public String getRoleIds() {
        return roleIds;
    }

    public void setRoleIds(String roleIds) {
        this.roleIds = roleIds;
    }
}
